// pages/mainWrite/test/test.js
//调用插件
const plugin = requirePlugin('WechatSI');
//获取全局唯一的语音识别管理器recordRecoManager
const manager = plugin.getRecordRecognitionManager();
Page({

  /**
   * 页面的初始数据
   */
  data: {

  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    this.text_audio('123');
  },
  /**
 * content:要转为语音的文字
*/
text_audio:function(content){
  var that=this;
  plugin.textToSpeech({
    lang: "zh_CN",//代表中文
    tts: true, //是否对翻译结果进行语音合成，默认为false，不进行语音合成
    content: content,//要转为语音的文字
    success: function (res) {
      console.log("succ tts", res);
      that.setData({
        src: res.filename//将文字转为语音后的路径地址
      })
      that.text_audio_status();//调用此方法来监听语音播放情况
    },
    fail: function (res) {
      console.log("fail tts", res)
    }
  })
},
  //用来监听文字转语音的播放情况
text_audio_status:function(){
  var that=this;
  //判断语音路径是否存在
     if (that.data.src == '') {
        console.log(暂无语音);
        return;
      }
     const innerAudioContext = wx.createInnerAudioContext();//创建音频实例
     innerAudioContext.src = that.data.src; //设置音频地址
     innerAudioContext.play(); //播放音频
     innerAudioContext.onPlay(() => {
        console.log('监听开始播放');
      });
      innerAudioContext.onEnded(() => {
        console.log('监听播报结束，可在结束中进行相应的处理逻辑');
        innerAudioContext.stop();
        //播放停止，销毁该实例,不然会出现多个语音重复执行的情况
        console.log('销毁innerAudioContext实例')
        innerAudioContext.destroy();
      })
      innerAudioContext.onError(() => {
        console.log('监听语音播放异常')
        innerAudioContext.destroy()//销毁播放实例
      })
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {
    
  },
  audio(){
    console.log("================")
    const innerAudioContext = wx.createInnerAudioContext();//新建一个createInnerAudioContext();
    // innerAudioContext.autoplay = true;//音频自动播放设置
    innerAudioContext.play();
    innerAudioContext.src = 'audio.mp3';//链接到音频的地址
    innerAudioContext.onPlay(() => {console.log('播放音效')});//播放音效
    innerAudioContext.onError((res) => {//打印错误
      console.log(res.errMsg);//错误信息
      console.log(res.errCode);//错误码
    })
  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})